Video and image coding technique is a basis and a key point for wide applications of important multimedia information—digital video and image. In a current block-based hybrid video coding framework, video coding generally includes the following four parts: prediction coding, transform and quantization, entropy coding, and loop filtering. The prediction coding includes intra-frame prediction and inter-frame prediction. Within one frame of image, adjacent pixels have similar values. Therefore, a current pixel may be predicted according to spatially adjacent pixels. For a video sequence, images of adjacent frames are greatly correlated with each other in time domain, which forms a basis for the inter-prediction technique in theory. At present, existing video coding standards include MPEG-1/2/4, H.261/H.263, H.264/AVC, AVS-1/2 and H.265/HEVC. The block-based inter-prediction technique is also improved with the development of the video coding.
The block-based inter-prediction technique is mainly developed in two aspects: (1) precision of the prediction of the pixel becomes higher and higher, from whole pixel prediction to ½ pixel prediction, or from ¼ pixel prediction to ⅛ pixel prediction. (2) with the number of unidirectional reference blocks changing from 1 to 2, the number of the reference blocks is increased. Before H.264/HEVC and AVS 2.0, for each block, there is only one forward reference block. The pixels of the current block are predicted based on the forward reference block, and location information (reference frame index and motion vector MV) of the reference block and the forward reference block are encoded into the bit-stream. Such image block is referred to as a forward uni-hypothesis coded image block. In the H.264/HEVC and AVS2, forward multiple references prediction technique is involved. For each block, there are two forward reference blocks. After a weighted prediction to the pixels of the current block based on the two forward reference blocks, location information (two reference frame indexes and two MVs) of the reference blocks are encoded into the bit-stream. Such an image block with two reference blocks is referred to as a forward multiple-hypothesis encoded image block.
A multiple-hypothesis encoded image block has two reference image blocks. It is supposed that a current image block to be encoded is A and its corresponding reference image blocks are B and C. A prediction coding procedure of the image block A may be as follows: a weighted sum of the reference blocks B and C is calculated to obtain a prediction image block P and a prediction coding is performed to A based on P. The weighted sum may be described by a following formula:P=α×C+(1−α)×B,  (1)                wherein 0<α<1, α may be a fixed value (e.g., α=0.5) defined by an encoder/decoder or an video coding standard, or a value included in the bit-stream, or a value derived from a correlation among reference frames where the image blocks A, B and C are located. The above formula merely describes one example. However, it is not limited thereto. In the HEVC, for a multiple-hypothesis encoded image block, there is no direct relationship between two reference frame indexes corresponding to it. The two reference frame indexes may be the same or different.        
There is also no direct relationship between two MVs corresponding to it. The two MVs may be the same or different. An encoder needs to write the two reference frame indexes and the two MVs into the bit-stream. In the AVS 2, the coding mode of the forward multiple-hypothesis encoded image block is referred to as directional multiple hypothesis (DMH) mode. The two reference frame indexes in this mode are the same and the difference between the two MVs is smaller than a threshold. Therefore, in this mode, what is needed to write into the bit-stream includes: one reference frame index, one MV and the difference between the two MVs. In order to facilitate the description, the reference frame index and the MV of an image block are referred to as motion information of the image block.
In order to further improve efficiency of the multiple-hypothesis prediction coding, characteristic of the multiple-hypothesis coded image block is analyzed. In the multiple-hypothesis prediction coding, it is found that there is a correlation between indexes of the two reference frame where the two reference blocks are located and the two MVs is not completely irrelevant, so the motion information of a current image block is greatly associated with the motion information of adjacent image blocks. Take the MV as an example, the MV of the current image block is closely relevant to the MV of a spatially/temporally adjacent image block. In some special cases, the MV of the current image block can be directly derived from the MV of the adjacent block and thus the MV of the current block is not needed to be transmitted in the bit-stream. At present, there are some MV derivation methods, e.g., median-based MV derivation, AMVP, Merge, edge length based MV derivation, etc., which are referred to as motion vector derivation method in general.
Temporally and spatially adjacent blocks of a current block are as shown in FIGS. 1A and 1B. There are 5 kinds of spatially adjacent blocks all together, as shown in FIG. 1A. A temporally adjacent block is a block which is in a former decoded frame and in the same position with the current block, as shown in FIG. 1B.
The MV of the current block derived from the MV of the adjacent block may also be derived based on the correlation between the reference frame indexes, which is referred to as a scaling MV derivation method.
A derivation rule of the scaling MV method includes: for a current block A, the motion vector corresponding to a reference block B in a reference frame F1 with an index RF1 is MV1. Thus, given a reference frame F2 with an index RF2, the motion vector MV2 of block A corresponding to a reference block C in the reference frame F2 may be derived by:
                                          MV            2                    =                                                    d                2                                            d                1                                      ×                          MV              1                                      ,                            (        2        )                            wherein d1 denotes a distance between the reference frame F1 and the current frame, d2 denotes a distance between the reference frame F2 and the current frame. It should be noted that, the motion vector MV has two components: x component MVx and y component MVy. Usually, MV={MVx, MVy}. Therefore, if the formula (2) is adopted to derive the MV, the two components are derived independently.        
After the multiple-hypothesis coding idea is introduced, the multiple-hypothesis coded image block requires two reference blocks. For the encoder, two reference frame indexes and two corresponding motion vectors need to be found during a motion search procedure. A complete search may be adopted in this search procedure, i.e., each position of each frame in the reference queue is searched. Or, a rapid search algorithm may be adopted. There may be various rapid search methods. For example, only each position within the 1 or 2 reference frames predefined is searched. Or, the search within the frame is simplified, but each frame has to be searched. Or, both the search within a frame and the search among the frames are simplified. For the decoder, if all of the motion information (2 reference frame indexes and 2 motion vectors) are transmitted in the bit-stream, the decoder needs to obtain the motion information from the bit-stream directly.